@use 'sass:map';
@use 'sass:color';
$themes: (
  light: (primary-color: #1678ef, // 全局主色
    link-color: #1678ef, // 链接色
    success-color: #52c41a, // 成功色
    warning-color: #faad14, // 警告色
    error-color: #ff3d2f, // 错误色
    font-size-base: 14px, // 主字号
    title-color: rgba(0, 0, 0, 0.95), // 标题色
    text-color: rgba(0, 0, 0, 0.85), // 主文本色
    text-color-secondary: rgba(0, 0, 0, 0.65), // 次文本色
    disabled-color: rgba(0, 0, 0, 0.25), // 失效色
    border-radius-base: 1px, // 组件/浮层圆角
    border-color-base: #ececec, // 边框色
    background-color: #f5f7fa,
    card-background-color: #ffffff,
    hover-background-color: #fafafa,
    title-background-color: #fafafa,
  ),
  dark:(primary-color: #1678ef, // 全局主色
    link-color: #1678ef, // 链接色
    success-color: #52c41a, // 成功色
    warning-color: #faad14, // 警告色
    error-color: #ff3d2f, // 错误色
    font-size-base: 14px, // 主字号
    title-color: rgba(255, 255, 255, 0.95), // 标题色
    text-color: rgba(255, 255, 255, 0.75), // 主文本色
    text-color-secondary: rgba(255, 255, 255, 0.65), // 次文本色
    disabled-color: rgba(255, 255, 255, 0.25), // 失效色
    border-radius-base: 1px, // 组件/浮层圆角
    border-color-base: #2c2c2c, // 边框色
    background-color: #000000,
    card-background-color: #151515,
    hover-background-color: #0f0f0f,
    title-background-color: #0f0f0f,
  ),
);

$curTheme: light;

@mixin useTheme() {
  @each $key, $value in $themes {
    $curTheme: $key !global;

    html[data-theme=#{$key}] & {
      @content;
    }
  }
}

@function getVar($key) {
  $themeMap: map.get($map: $themes, $key: $curTheme);
  @return map.get($map: $themeMap, $key: $key);
}

@function coloren($color, $amount) {
  @return if($curTheme == 'dark', color.adjust($color, $lightness: -$amount), color.adjust($color, $lightness: $amount));
}